"""
服务模块初始化文件
导出所有服务类和函数
"""

from .auth_service import AuthService, get_current_user_dep, get_current_active_user_dep, get_current_active_user, require_admin, require_agent_or_admin
from .ticket_service import TicketService
from .group_service import GroupService 
from .database_metadata_service import DatabaseMetadataService
from .generic_query_service import GenericQueryService
from .research_service import ResearchService
from .database_session_service import DatabaseSessionService
from .feishu_service import FeishuService
from .scheduler_service import SchedulerService
from .notification_service import NotificationService
from .websocket_service import WebSocketService
from .knowledge_graph_service import KnowledgeGraphService
from .cache_service import CacheService
from .research_cache import ResearchCache
from .query_cache_service import QueryCacheService, query_cache_service
from .query_condition_parser import QueryConditionParser
from .monitoring_service import MonitoringService
from .security_service import RateLimiter, rate_limiter, rate_limit, InputValidator, validate_input
from .mcp_service import mcp_service_manager
from .plugin_system import PluginManager

# 创建全局插件管理器实例
plugin_manager = PluginManager()

# 导出所有服务
__all__ = [
    "AuthService",
    "TicketService",
    "GroupService", 
    "DatabaseMetadataService",
    "GenericQueryService",
    "ResearchService",
    "DatabaseSessionService",
    "FeishuService",
    "SchedulerService",
    "NotificationService",
    "WebSocketService",
    "KnowledgeGraphService",
    "CacheService",
    "ResearchCache",
    "QueryCacheService",
    "query_cache_service",
    "QueryConditionParser",
    "MonitoringService",
    "get_current_user_dep",
    "get_current_active_user_dep", 
    "get_current_active_user",
    "require_admin",
    "require_agent_or_admin",
    "RateLimiter",
    "rate_limiter",
    "rate_limit",
    "InputValidator",
    "validate_input",
    "mcp_service_manager",
    "plugin_manager"
]